package com.tencent.search.pojo;
import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * 
 * 
 * @author ian
 * @email ian.ren121@gmail.com
 * @date 2022-04-22 11:34:20
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Document(indexName = "user",type = "doc")
public class UserinfoEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 * 
	 */
	@Id
	private Long id;
	/**
	 * 用户昵称
	 */
	@Field(type = FieldType.Keyword)
	private String nickname;
	/**
	 * 用户密码
	 */
	private String password;
	/**
	 * 手机号
	 */
	@Field(type = FieldType.Keyword)
	private String phone;
	/**
	 * 邮箱
	 */
	@Field(type = FieldType.Keyword)
	private String email;
	/**
	 * 创建时间
	 */
	@JSONField(format = "YYYY-MM-dd")
	@DateTimeFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss")
	@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd'T'HH:mm:ss")
	private Date createTime;
	/**
	 * 修改时间
	 */
	@JSONField(format = "YYYY-MM-dd")
	@DateTimeFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss")
	@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd'T'HH:mm:ss")
	private Date updateTime;
	/**
	 * 真实姓名
	 */
	private String realname;
	/**
	 * 优惠劵
	 */
	private String coupon;
	/**
	 * 用户头像
	 */
	private String userHeaderImg;
	/**
	 * 生日
	 */
	private String birthday;
	/**
	 * 职位
	 */
	private String position;
	/**
	 * 所在地区
	 */
	private String address;
	/**
	 * 性别
	 */
	private String gender;
	/**
	 * 爱好
	 */
	private String hobby;
	/**
	 * 个性签名
	 */
	private String signature;
	/**
	 * 身份证号
	 */
	private String idCard;
	/**
	 * 积分
	 */
	private Long integal;
	/**
	 * 经验
	 */
	private Long points;
	/**
	 * 学习时长
	 */
	private Long studyLegth;
	/**
	 * 课程ID
	 */
	private String courseId;

}
